home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / preccx / prccx240.lha / makefile.dos < prev    next >
Makefile  |  1993-05-27  |  2KB  |  89 lines

  1. CFLAGS=
  2. CC=tc /m
  3. ARCHIVER=TLIB
  4. ROOT=\HOME
  5.  
  6. BINDIR=.
  7. EXECUTABLE=preccx.exe
  8.  
  9. MODEL=C
  10. TOKENSIZE=1
  11.  
  12. LIBDIR=\HOME\C\LIB
  13. LIBRARY=PRECCX$(TOKENSIZE)$(MODEL).lib
  14.  
  15. DOCS=history preccx.1 preccx.man PACKING.LST REGISTER.DOC LICENSE.DOC  INSTALL.INS  README bugs.knw
  16.  
  17. SPECS=preccx.y lex.y c.y
  18.  
  19. LIBSRCS=cc.c ccdata.c ccx.c common.c engine.c on_error.c yystuff.c
  20.  
  21. SOURCES=$(LIBSRCS) preamble.c preccx.c MAKEFILE MAKEFILE.DOS preccx.y preccx.prj preccx.h preamble.h
  22.  
  23. LIBRARIES=$(LIBDIR)\preccx??.lib
  24.  
  25. HEADERS=cc.h ccx.h
  26.  
  27. OBJECTS=cc.obj ccdata.obj ccx.obj common.obj engine.obj on_error.obj yystuff.obj
  28.  
  29. PRECIOUS=preccn.exe preccx.exe precc.exe preccx.c preccx.y preccn.y c.y lex.y
  30.  
  31. $(EXECUTABLE): preccx.c preamble.c c.c lex.c cc.h preccx.h preamble.h $(LIBRARY)
  32.     - $(CC) $(CFLAGS) preccx.prj
  33.  
  34. preccx.c: preccx.y
  35.     echo need to remake preccx.c
  36.     echo try .\precc[x] preccx.y preccx.c
  37.  
  38. lex.c: lex.y
  39.     echo need to remake lex.c
  40.     echo try .\precc[x] lex.y lex.c
  41.  
  42. c.c: c.y
  43.     echo need to remake c.c
  44.     echo try .\precc[x] c.y c.c
  45.  
  46. library: objects
  47.     - if exist $(LIBRARY) del $(LIBRARY)
  48.     - $(ARCHIVER) $(LIBRARY) +cc.obj +ccx.obj +engine.obj +common.obj +ccdata.obj +yystuff.obj +on_error.obj
  49.     - del *.obj
  50.  
  51. libraries: libraryC libraryL
  52.  
  53. libraryC:
  54.     make -f makefile.dos library CFLAGS=-DTOKEN=char TOKENSIZE=1 MODEL=C
  55.     make -f makefile.dos library CFLAGS=-DTOKEN=int TOKENSIZE=2 MODEL=C
  56.     make -f makefile.dos library CFLAGS=-DTOKEN=long TOKENSIZE=4 MODEL=C
  57.  
  58. libraryL:
  59.     make -f makefile.dos library CFLAGS=-DTOKEN=char TOKENSIZE=1 MODEL=L
  60.     make -f makefile.dos library CFLAGS=-DTOKEN=int TOKENSIZE=2 MODEL=L
  61.     make -f makefile.dos library CFLAGS=-DTOKEN=long TOKENSIZE=4 MODEL=L
  62.  
  63.  
  64. objects: $(LIBSRCS) $(HEADERS)
  65.     - $(CC) $(CFLAGS) preccx$(TOKENSIZE)$(MODEL).prj
  66.  
  67. install: install-bin install-lib
  68.  
  69. install-bin: $(EXECUTABLE)
  70.     - copy $(EXECUTABLE) $(BINDIR)
  71.  
  72. install-lib: $(LIBRARY)
  73.     - copy $(LIBRARY) $(LIBDIR)
  74.  
  75. clean:
  76.     - del *.obj
  77.     echo remove $(EXECUTABLE)?
  78.     pause
  79.     - del $(EXECUTABLE)
  80.     echo remove $(LIBRARY)?
  81.     pause
  82.     - del $(LIBRARY)
  83.  
  84. distribution:
  85.     - pkzip  preccx.zip $(DOCS)
  86.     - pkzip  preccx.zip $(EXECUTABLE)
  87.     - pkzip  preccx.zip $(HEADERS)
  88.     - pkzip  preccx.zip $(LIBRARIES)
  89.